#pragma once
#include<iostream>
#include<string>
struct goo {
	goo(int& t1, std::string t2, int t3) {
		m_data = t1;
		std::cout << __FUNCTION__ << " " << t1++ << " " << t2 << " " << t3 << std::endl;
	}

	int test(std::string s, int t) {
		std::cout << __FUNCTION__ << " " << s << std::endl;
		return t + 10;
	}

	void test2() {
		std::cout << __FUNCTION__ << " " << "m_data:" << m_data << std::endl;
	}
public:
	int m_data;
	std::string m_str;
};

struct foo {
	foo(std::string t1, std::string t2) {
		std::cout << __FUNCTION__ << "\n" << t1 << " " << t2 << std::endl;
	}

	double test(int t1, int t2) {
		std::cout << __FUNCTION__ << "\n" << t1 << std::endl;
		return t1 + 10.5;
	}
};